package com.tudouji.project.bill.domain.vo;

import cn.afterturn.easypoi.excel.annotation.Excel;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.tudouji.framework.web.domain.BaseEntity;
import com.tudouji.project.bill.domain.Sellitem;
import com.tudouji.project.bill.domain.Sellspitem;
import com.tudouji.project.bill.domain.Whoutform;
import com.tudouji.project.customer.domain.Customer;
import com.tudouji.project.flow.domain.Flowtempnode;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

@Data
public class SellformListRep extends BaseEntity{

    private static final long serialVersionUID = 1L;

    private Long id;

    private String guid;

    private String flowtempguid;

    @Excel(name = "销售单号",width = 30)
    private String sellcode;
    @Excel(name="订单时间", width = 30, format = "yyyy-MM-dd HH:mm:ss" )
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;
    @Excel(name = "订单类型",width = 30)
    private String flagname;
    @Excel(name = "运输车牌号",width = 30)
    private String carcode;
    @Excel(name = "订单状态",width = 30)
    private String statusname;// 状态名称
    @Excel(name = "销售部门",width = 30)
    private String depname;
    @Excel(name = "销售人员",width = 30)
    private String applyname;
    @Excel(name = "客户名称",width = 30)
    private String customername;
    @Excel(name = "收货人",width = 30)
    private String arricontact;
    @Excel(name = "收货人电话",width = 30)
    private String arricontactno;
    @Excel(name = "收货地址",width = 30)
    private String arriAddress;
    @Excel(name = "支付方式",width = 30)
    private String paytypename;
    @Excel(name = "计价方式",width = 30)
    private String settletypename;
    @Excel(name = "出库库房",width = 30)
    private String storeroomname;
    @Excel(name = "出库时间",width = 30)
    private String outtime;
    @Excel(name = "产品名称",width = 30)
    private String productname;
    @Excel(name = "产品名称",width = 30)
    private String spname;
    @Excel(name = "订单数量",width = 30)
    private BigDecimal weight;
    @Excel(name = "赠送数量",width = 30, isStatistics = true)
    private Integer handselcount;
    @Excel(name = "出库数量",width = 30, isStatistics = true)
    private BigDecimal siloadweihgt;
    @Excel(name = "实际赠送数量",width = 30)
    private Integer loadhandsel;
    @Excel(name = "单价",width = 30)
    private BigDecimal price;
    @Excel(name = "内部结算价",width = 30)
    private BigDecimal innerPrice;
    @Excel(name = "单位",width = 30)
    private String unit;

    private String depguid;

    private String sorgguid;

    private String sorkdnum;

    private String customerguid;

    private String custkdnum;

    /* 2020-02-20 */
    private String customerphone;
    private String productguid;
    private String spguid;
    private String withdrawtypename;

    private BigDecimal siunloadweight;

    private BigDecimal sifinalamount;
    private String starttime;
    private String endtime;
    private String beginTime;
    private String startsettletime;
    private String endsettletime;

    private Integer ltstatus;

    private Integer partitionflag;

    private List<Sellspitem> spitems;
    private String orgName;

    private Integer type;

    private String monthly;

    private Integer transType;//业务运输方式：1-汽运、2-海运、3-空运
    private String transTypename;
    private String stockunit;

    private String startouttime;
    private String endouttime;
    private String depcondition;
    private String applycondition;
    private String customercondition;
    private String ordercondition;

    private String srcondition;

    private String deducttype;

    private BigDecimal orderweight;
    private BigDecimal deductamount;

    private String storermguid;

    private BigDecimal loadweight;
    private BigDecimal unnloadweight;

    private BigDecimal packweight;

    private BigDecimal amount;
    private BigDecimal finalamount;

    private Integer quitSRType;

    private String isallpers;// 是否具有全局查看权限

    private String[] anddepids;

    private String[] androomids;

    private String quitSRTypeName;

    private String search;// 查询条件

    private List<Flowtempnode> nodes;

    private Integer settletype;

    private Integer settlebilling;

    private Integer settledays;

    private String calloadtime;// 货运时长

    private String opertime;
    private String remarks;

    private String operatorid;

    private String operatorname;

    private BigDecimal logweight;

    private String customercurrencyname;

    private String transferguid;


    private String drivername;
    private String driverphone;
    private String deliport;
    private String arriport;
    private String containerno;
    private String arr;
    private String arriprovince;
    private String arricity;
    private String arridistrict;
    private String arriaddres;
    private String contact;
    private Integer sisettlecount;

    private Integer withdrawtype;

    private String storerOrgguid;

    private String condition;//查询条件

    private BigDecimal customerprebalance;

    // 检索条件
    private String[] depids;

    private String[] roomids;

    private Integer[] stats;// 状态组
    private Integer[] paytypes;// 支付方式

    private String farepricetypename;

    private Integer count;// 总条数

    private String[] ids;

    private Customer customer;

    private String saletypename;// 销售方式名称

    private Integer loadcount;
    private Integer unloadcount;
    private Integer concessiontype;

    private BigDecimal maxdeduct;

    private String contractid;
    private String contractcode;
    private String contractname;
    private Integer paytype;
    private Integer currency;
    private Integer flag;
    private String parentcode;
    private String parentguid;
    private BigDecimal finalweight;
    private Integer finalcount;
    private Integer deliverytype;

    private Integer orderpack;
    private BigDecimal lbweight;

    private Integer qaresult;// 销售主表增加质检结果（合格、不合格），由质检节点确定。


    private BigDecimal handselweight;
    private BigDecimal backmoney;

    private String backmoneytime;

    /**
     * 调拨地址参数
     *
     */
    private String deliprovince;

    private String deliaddress;

    private String delicontacttel;

    private String delicontact;

    private String deliverytypename;

    private String senddate;
    private String arrivedate;

    private BigDecimal backamount;

    private String pbstatusname;


    private Integer minstatus;

    private Integer maxstatus;

    private String settleamount;
    private String settletime;

    private BigDecimal shWeight;

    // 1-草稿 2-内部审批 4-待加工 5-生产加工 6-待出库 7-已出库 8-运输中 9-到货 10-结算 11-已回款）0-已作废。
    private Integer status;

    private String faretypename;

    private List<Sellitem> items;// 采购明细


    private List<Whoutform> whoutform;// 采购明细


    private String name;// 销售方式名称
    private String sorgname;// 销售方式名称


    private String district;// 销售方式名称


    private String typname;// 销售方式名称

    private Integer actualPaymentDays;
}
